package net.biancheng.mapper;

import net.biancheng.bean.SysUserRole;

import java.util.List;

/**
 * 用户与角色关联Mapper接口
 * 
 * @author lb
 * @date 2023-08-15
 */
public interface SysUserRoleMapper 
{

    /**
     * 查询用户关联的角色ID
     * @param userId
     * @return
     */
    public List<Long> selectRoleIdListByUserId(Long userId);

    /**
     * 查询角色是否存在关联的用户
     * 
     * @param roleId 角色ID
     * @return 用户与角色关联数量
     */
    public int checkRoleExistUser(Long roleId);

    /**
     * 新增用户与角色关联
     * 
     * @param sysUserRole 用户与角色关联
     * @return 结果
     */
    public int insertSysUserRole(SysUserRole sysUserRole);

    /**
     * 批量新增用户与角色关联
     * @param list
     * @return
     */
    public int batchInsertSysUserRole(List<SysUserRole> list);

    /**
     * 根据用户删除角色关联
     * 
     * @param userId 用户ID
     * @return 结果
     */
    public int deleteSysUserRoleByUserId(Long userId);

    /**
     * 批量删除用户与角色关联
     * 
     * @param userIds 用户ID集合
     * @return 结果
     */
    public int deleteSysUserRoleByUserIds(Long[] userIds);
}